Singleton bound

In coding theory, the Singleton bound, named after Richard Collom Singleton, is a relatively crude bound on the size of a block code C with block length n, size r and minimum distance d.

Contents

Statement of the Bound

The minimum distance of a set C of codewords of length n is defined as

d = \min_{x,y \in C, x \neq y} d(x,y)

where d(x,y) is the Hamming distance between x and y. The expression A_{q}(n,d) represents the maximum number of possible codewords in a q-ary block code of length n and minimum distance d.

Then the Singleton bound states that

A_q(n,d) \leq q^{n-d%2B1}.

Proof

First observe that there are q^n many q-ary words of length n, since each letter in such a word may take one of q different values, independently of the remaining letters.

Now let C be an arbitrary q-ary block code of minimum distance d. Clearly, all codewords c \in C are distinct. If we delete the first d-1 letters of each codeword, then all resulting codewords must still be pairwise different, since all original codewords in C have Hamming distance at least d from each other. Thus the size of the code remains unchanged.

The newly obtained codewords each have length

n-(d-1)=n-d%2B1

and thus there can be at most

q^{n-d%2B1}

of them. Hence the original code C shares the same bound on its size |C|:

|C| \le A_q(n,d) \leq q^{n-d%2B1}.

MDS codes

Block codes that achieve equality in Singleton bound are called MDS (maximum distance separable) codes. Examples of such codes include codes that have only one codeword (minimum distance n), codes that use the whole of (F_{q})^{n} (minimum distance 1), codes with a single parity symbol (minimum distance 2) and their dual codes. These are often called trivial MDS codes.

In the case of binary alphabets, only trivial MDS codes exist.[1]

Examples of non-trivial MDS codes include Reed-Solomon codes and their extended versions.[2]

See also

Notes

  1. ^ see e.g. Vermani (1996), Proposition 9.2.
  2. ^ see e.g. MacWilliams and Sloane, Ch. 11.

References

Further reading